package com.amado.course08ArrayTwo;

//声明一个二维数组并初始化，求鞍点(所谓鞍点就是这个值在它所在的行最大，在它所在的列最小。)
//int[][] array = { {1, 3, 5, 4, 2},
//        {12, 23,33,71,23},
//        {14, 23,35,6, 9},
//        {21, 13, 8,9, 2},
//        {67, 81, 92,33, 43}
//        };
public class ArrayTwo8 {
	public static void main(String[] args) {
//		八. 声明一个二维数组并初始化，求鞍点(所谓鞍点就是这个值在它所在的行最大，在它所在的列最小。) 
//		   int[][] array = { {1, 3, 5, 4, 2},
//		                    {12, 23,33,71,23},
//		                    {14, 23,35,6, 9},
//		                    {21, 13, 8,9, 2},
//		                    {67, 81, 92,33, 43}
//		                    };

		 int[][] array = { {1, 3, 5, 4, 2},
                 {12, 23,33,71,23},
                 {14, 23,35,6, 9},
                 {21, 13, 8,9, 2},
                 {67, 81, 92,33, 43}
                 };
		 
		 for(int i=0;i<array.length;i++) {
			 //最大的行值所在的列
			 int maxCols = 0;
			 for(int j=0;j<array[i].length;j++) {
				 if(array[i][j]>array[i][maxCols]) {
					 maxCols = j;
				 }
			 }
			 int minRow =0;
			 for(int x=0;x<array.length;x++) {
				 if(array[x][maxCols]<array[minRow][maxCols]) {
					 minRow = x;
				 }
			 }
			 if(i==minRow) {
				 System.out.println("鞍点"+array[i][maxCols]+"下标： "+i+"   "+maxCols);
			 }
		 }
	}
}
